<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 很多情况中只需要关心对象中包含的数据 而不关心对象的类型
        // 所以可以使用内置所提供的Object造出对象
        let obj = new Object;
        // 设置对象的信息
        obj.name = '李四';
        obj.age = 20;
        // 为了简化Object对象的使用 单独提供了{}作为字面量
        // 大括号中使用逗号分割每一个属性 属性名称与属性值使用:分割
        // 属性名称可以使用引号包裹 也可以不用但是属性名称如果有特殊符号的一定要用引号了 属性值可以是任何数据类型
        let p = {
            name: '坤坤',
            music: "姬霓太美",
            age: 18,
            like: ['唱', '跳', 'rap'],
            gf:{
                name:'如花'
            }
        }
        // 读取对象属性
        console.log(p.music);
        // 修改属性
        p.music = '鸡你太美';
        // 删除属性
        delete p.name;
        // 如果遇到属性是其他的复杂数据类型 继续按照对应的使用方式即可
        console.log(p.gf.name);
        console.log(p.like[2]);
        // 获取对象属性特殊写法(数组写法)
        let key = 'music';
        // 获取到p对象下叫做key的属性
        console.log(p.key);
        // 获取p对象下 key变量保存字符串的属性  如果key变量存储的是age 就取出age属性的值
        console.log(p[key]);
        console.log(p)
        // for in 语句对象遍历 自动的将对象所有的属性 每一个都将名称赋值给key  在执行括号中的代码
        for(let key in p){
            console.log(key);
            console.log(p[key])
        }


    </script>
</body>

</html>